home *** CD-ROM | disk | FTP | other *** search
/ Halting the Hacker - A P…uide to Computer Security / Halting the Hacker - A Practical Guide to Computer Security.iso / rfc / rfc1671.txt < prev    next >
Text File  |  1997-04-01  |  18KB  |  452 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                       B. Carpenter
  8. Request for Comments: 1671                                          CERN
  9. Category: Informational                                      August 1994
  10.  
  11.  
  12.         IPng White Paper on Transition and Other Considerations
  13.  
  14. Status of this Memo
  15.  
  16.    This memo provides information for the Internet community.  This memo
  17.    does not specify an Internet standard of any kind.  Distribution of
  18.    this memo is unlimited.
  19.  
  20. Abstract
  21.  
  22.    This document was submitted to the IETF IPng area in response to RFC
  23.    1550.  Publication of this document does not imply acceptance by the
  24.    IPng area of any ideas expressed within.  Comments should be
  25.    submitted to the big-internet@munnari.oz.au mailing list.
  26.  
  27. Summary
  28.  
  29.    This white paper outlines some general requirements for IPng in
  30.    selected areas. It identifies the following requirements for stepwise
  31.    transition:
  32.  
  33.    A) Interworking at every stage and every layer.
  34.    B) Header translation considered harmful
  35.    C) Coexistence.
  36.    D) IPv4 to IPng address mapping.
  37.    E) Dual stack hosts.
  38.    F) DNS.
  39.    G) Smart dual-stack code.
  40.    H) Smart management tools.
  41.  
  42.    Some remarks about phsysical and logical multicast follow, and it is
  43.    suggested that a model of how IPng will run over ATM is needed.
  44.  
  45.    Finally, the paper suggests that the requirements for policy routing,
  46.    accounting, and security firewalls will in turn require all IPng
  47.    packets to carry a trace of the type of transaction involved as well
  48.    as of their source and destination.
  49.  
  50. Transition and deployment
  51.  
  52.    It is clear that the transition will take years and that every site
  53.    will have to decide its own staged transition plan. Only the very
  54.    smallest sites could envisage a single step ("flag day") transition,
  55.  
  56.  
  57.  
  58. Carpenter                                                       [Page 1]
  59.  
  60. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  61.  
  62.  
  63.    presumably under pressure from their Internet service providers.
  64.    Furthermore, once the IPng decision is taken, the next decade (or
  65.    more) of activity in the Internet and in all private networks using
  66.    the Internet suite will be strongly affected by the process of IPng
  67.    deployment. User sites will look at the decision whether to change
  68.    from IPv4 in the same way as they have looked in the past at changes
  69.    of programming language or operating system. It may not be a foregone
  70.    conclusion that what they change to is IPng.  Their main concern will
  71.    be to minimise the cost of the change and the risk of lost
  72.    production.
  73.  
  74.    This concern immediately defines strong constraints on the model for
  75.    transition and deployment of IPng. Some of these constraints are
  76.    listed below, with a short explanation of each one.
  77.  
  78.    Terminology: an "IPv4 host" is a host that runs exactly what it runs
  79.    today, with no maintenance releases and no configuration changes. An
  80.    "IPng host" is a host that has a new version of IP, and has been
  81.    reconfigured.  Similarly for routers.
  82.  
  83.    A) Interworking at every stage and every layer.
  84.  
  85.    This is the major constraint. Vendors of computer systems, routers,
  86.    and applications software will certainly not coordinate their product
  87.    release dates. Users will go on running their old equipment and
  88.    software.  Therefore, any combination of IPv4 and IPng hosts and
  89.    routers must be able to interwork (i.e., participate in UDP and TCP
  90.    sessions). An IPv4 packet must be  able to find its way from any IPv4
  91.    host, to any other IPv4 or IPng host, or vice versa, through a
  92.    mixture of IPv4 and IPng routers, with no (zero, null) modifications
  93.    to the IPv4 hosts. IPv4 routers must need no modifications to
  94.    interwork with IPng routers.  Additionally, an application package
  95.    which is "aware" of IPv4 but still "unaware" of IPng must be able to
  96.    run on a computer system which is running IPv4, but communicating
  97.    with an IPng host.  For example an old PC in Europe should be able to
  98.    access a NIC server in the USA, even if the NIC server is running
  99.    IPng and the transatlantic routing mechanisms are only partly
  100.    converted.  Or a Class C network in one department of a company
  101.    should retain full access to corporate servers which are running
  102.    IPng, even though nothing whatever has been changed inside the Class
  103.    C network.
  104.  
  105.    (This does NOT require an IPv4-only application to run on an IPng
  106.    host; thus we accept that some hosts cannot be upgraded until all
  107.    their applications are IPng-compatible. In other words we accept that
  108.    the API may change to some extent. However, even this relaxation is
  109.    debatable and some vendors may want to strictly preserve the IPv4 API
  110.    on an IPng host.)
  111.  
  112.  
  113.  
  114. Carpenter                                                       [Page 2]
  115.  
  116. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  117.  
  118.  
  119.    B) Header translation considered harmful.
  120.  
  121.    This author believes that any transition scenario which REQUIRES
  122.    dynamic header translation between IPv4 and IPng packets will create
  123.    almost insurmountable practical difficulties:
  124.  
  125.  
  126.      B1) It is taken for granted for the purposes of this paper that
  127.          IPng functionality will be a superset of IPv4 functionality.
  128.          However, successful translation between protocols requires
  129.          that the functionalities of the two protocols which are to be
  130.          translated are effectively identical. To achieve this,
  131.          applications will need to know when they are interworking,
  132.          via the IPng API and a translator somewhere in the network,
  133.          with an IPv4 host, so as to use only IPv4 functionality. This
  134.          is an unrealistic constraint.
  135.  
  136.      B2) Administration of translators will be quite impracticable for
  137.          large sites, unless the translation mechanism is completely
  138.          blind and automatic. Specifically, any translation mechanism
  139.          that requires special tags to be maintained manually for each
  140.          host in tables (such as DNS tables or router tables) to
  141.          indicate the need for translation will be impossible to
  142.          administer. On a site with thousands of hosts running many
  143.          versions and releases of several operating systems, hosts
  144.          move forwards and even backwards between software releases in
  145.          such a way that continuously tracking the required state of
  146.          such tags will be impossible. Multiplied across the whole
  147.          Internet, this will lead to chaos, complex failure modes, and
  148.          difficult diagnosis. In particular, it will make the
  149.          constraint of paragraph B1) impossible to respect.
  150.  
  151.          In practice, the knowledge that translation is needed should
  152.          never leak out of the site concerned if chaos is to be
  153.          avoided, and yet without such knowledge applications cannot
  154.          limit themselves to IPv4 functionality when necessary.
  155.  
  156.    To avoid confusion, note that header translation, as discussed here,
  157.    is not the same thing as address translation (NAT). This paper does
  158.    not discuss NAT.
  159.  
  160.    This paper does not tackle performance issues in detail, but clearly
  161.    another disadvantage of translation is the consequent overhead.
  162.  
  163.    C) Coexistence.
  164.  
  165.    The Internet infrastructure (whether global or private) must allow
  166.    coexistence of IPv4 and IPng in the same routers and on the same
  167.  
  168.  
  169.  
  170. Carpenter                                                       [Page 3]
  171.  
  172. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  173.  
  174.  
  175.    physical paths.
  176.  
  177.    This is a necessity, in order that the network infrastructure can be
  178.    updated to IPng without requiring hosts to be updated in lock step
  179.    and without requiring translators.
  180.  
  181.    Note that this requirement does NOT impose a decision about a common
  182.    or separate (ships-in-the-night) approach to routing.  Nor does it
  183.    exclude encapsulation as a coexistence mechanism.
  184.  
  185.    D) IPv4 to IPng address mapping.
  186.  
  187.    Human beings will have to understand what is happening during
  188.    transition. Although auto-configuration of IPng addresses may be a
  189.    desirable end point, management of the transition will be greatly
  190.    simplified if there is an optional simple mapping, on a given site,
  191.    between IPv4 and IPng addresses.
  192.  
  193.    Therefore, the IPng address space should include a mapping for IPv4
  194.    addresses, such that (if a site or service provider wants to do this)
  195.    the IPv4 address of a system can be transformed mechanically into its
  196.    IPng address, most likely by adding a prefix.  The prefix does not
  197.    have to be the same for every site; it is likely to be at least
  198.    service-provider specific.
  199.  
  200.    This does not imply that such address mapping will be used for
  201.    dynamic translation (although it could be) or to embed IPv4 routing
  202.    within IPng routing (although it could be). Its main purpose is to
  203.    simplify transition planning for network operators.
  204.  
  205.    By the way, this requirement does not actually assume that IPv4
  206.    addresses are globally unique.
  207.  
  208.    Neither does it help much in setting up the relationship, if any,
  209.    between IPv4 and IPng routing domains and hierarchies. There is no
  210.    reason to suppose these will be in 1:1 correspondence.
  211.  
  212.    E) Dual stack hosts.
  213.  
  214.    Stepwise transition without translation is hard to imagine unless a
  215.    large proportion of hosts are simultaneously capable of running IPng
  216.    and IPv4.  If A needs to talk to B (an IPng host) and to C (an IPv4
  217.    host) then either A or B must be able to run both IPv4 and IPng. In
  218.    other words, all hosts running IPng must still be able to run IPv4.
  219.    IPng-only hosts are not allowed during transition.
  220.  
  221.    This requirement does not imply that IPng hosts really have two
  222.    completely separate IP implementations (dual stacks and dual APIs),
  223.  
  224.  
  225.  
  226. Carpenter                                                       [Page 4]
  227.  
  228. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  229.  
  230.  
  231.    but just that they behave as if they did.  It is compatible with
  232.    encapsulation (i.e., one of the two stacks encapsulates packets for
  233.    the other).
  234.  
  235.    Obviously, management of dual stack hosts will be simplified by the
  236.    address mapping just mentioned. Only the site prefix has to be
  237.    configured (manually or dynamically) in addition to the IPv4 address.
  238.  
  239.    In a dual stack host the IPng API and the IPv4 API will be logically
  240.    distinguishable even if they are implemented as a single entity.
  241.    Applications will know from the API whether they are using IPng or
  242.    IPv4.
  243.  
  244.    F) DNS.
  245.  
  246.    The dual stack requirement implies that DNS has to reply with both an
  247.    IPv4 and IPng address for IPng hosts, or with a single reply that
  248.    encodes both.
  249.  
  250.    If a host is attributed an IPng address in DNS, but is not actually
  251.    running IPng yet, it will appear as a black hole in IPng space - see
  252.    the next point.
  253.  
  254.    G) Smart dual-stack code.
  255.  
  256.    The dual-stack code may get two addresses back from DNS; which does
  257.    it use?  During the many years of transition the Internet will
  258.    contain black holes. For example, somewhere on the way from IPng host
  259.    A to IPng host B there will sometimes (unpredictably) be IPv4-only
  260.    routers which discard IPng packets.  Also, the state of the DNS does
  261.    not necessarily correspond to reality. A host for which DNS claims to
  262.    know an IPng address may in fact not be running IPng at a particular
  263.    moment; thus an IPng packet to that host will be discarded on
  264.    delivery.  Knowing that a host has both IPv4 and IPng addresses gives
  265.    no information about black holes. A solution to this must be proposed
  266.    and it must not depend on manually maintained information.  (If this
  267.    is not solved, the dual stack approach is no better than the packet
  268.    translation approach.)
  269.  
  270.    H) Smart management tools.
  271.  
  272.    A whole set of management tools is going to be needed during the
  273.    transition. Why is my IPng route different from my IPv4 route?  If
  274.    there is translation, where does it happen?  Where are the black
  275.    holes? (Cosmologists would like the same tool :-) Is that host REALLY
  276.    IPng-capable today?...
  277.  
  278.  
  279.  
  280.  
  281.  
  282. Carpenter                                                       [Page 5]
  283.  
  284. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  285.  
  286.  
  287. Multicasts high and low
  288.  
  289.    It is taken for granted that multicast applications must be supported
  290.    by IPng. One obvious architectural rule is that no multicast packet
  291.    should ever travel twice over the same wire, whether it is a LAN or
  292.    WAN wire. Failure to observe this would mean that the maximum number
  293.    of simultaneous multicast transactions would be halved.
  294.  
  295.    A negative feature of IPv4 on LANs is the cavalier use of physical
  296.    broadcast packets by protcols such as ARP (and various non-IETF
  297.    copycats).  On large LANs this leads to a number of undesirable
  298.    consequences (often caused by poor products or poor users, not by the
  299.    protcol design itself).  The obvious architectural rule is that
  300.    physical broadcast should be replaced by unicast (or at worst,
  301.    multicast) whenever possible.
  302.  
  303. ATM
  304.  
  305.    The networking industry is investing heavily in ATM. No IPng proposal
  306.    will be plausible (in the sense of gaining management approval)
  307.    unless it is "ATM compatible", i.e., there is a clear model of how it
  308.    will run over an ATM network. Although a fully detailed document such
  309.    as RFC 1577 is not needed immediately, it must be shown that the
  310.    basic model works.
  311.  
  312.    Similar remarks could be made about X.25, Frame Relay, SMDS etc. but
  313.    ATM is the case with the highest management hype ratio today.
  314.  
  315. Policy routing and accounting
  316.  
  317.    Unfortunately, this cannot be ignored, however much one would like
  318.    to.  Funding agencies want traffic to flow over the lines funded to
  319.    carry it, and they want to know afterwards how much traffic there
  320.    was.  Accounting information can also be used for network planning
  321.    and for back-charging.
  322.  
  323.    It is therefore necessary that IPng and its routing procedures allow
  324.    traffic to be routed in a way that depends on its source and
  325.    destination in detail. (As an example, traffic from the Physics
  326.    department of MIT might be required to travel a different route to
  327.    CERN than traffic from any other department.)
  328.  
  329.    A simple approach to this requirement is to insist that IPng must
  330.    support provider-based addressing and routing.
  331.  
  332.    Accounting of traffic is required at the same level of detail (or
  333.    more, for example how much of the traffic is ftp and how much is
  334.    www?).
  335.  
  336.  
  337.  
  338. Carpenter                                                       [Page 6]
  339.  
  340. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  341.  
  342.  
  343.    Both of these requirements will cost time or money and may impact
  344.    more than just the IP layer, but IPng should not duck them.
  345.  
  346. Security Considerations
  347.  
  348.    Corporate network operators, and campus network operators who have
  349.    been hacked a few times, take this more seriously than many protocol
  350.    experts.  Indeed many corporate network operators would see improved
  351.    security as a more compelling argument for transition to IPng than
  352.    anything else.
  353.  
  354.    Since IPng will presumably be a datagram protocol, limiting what can
  355.    be done in terms of end-to-end security, IPng must allow more
  356.    effective firewalls in routers than IPv4.  In particular efficient
  357.    traffic barring based on source and destination addresses and types
  358.    of transaction is needed.
  359.  
  360.    It seems likely that the same features needed to allow policy routing
  361.    and detailed accounting would be needed for improved firewall
  362.    security.  It is outside the scope of this document to discuss these
  363.    features in detail, but it seems unlikely that they are limited to
  364.    implementation details in the border routers.  Packets will have to
  365.    carry some authenticated trace of the (source, destination,
  366.    transaction) triplet in order to check for unwanted traffic, to allow
  367.    policy-based source routing, and/or to allow detailed accounting.
  368.    Presumably any IPng will carry source and destination identifiers in
  369.    some format in every packet, but identifying the type of transaction,
  370.    or even the individual transaction, is an extra requirement.
  371.  
  372. Disclaimer and Acknowledgements
  373.  
  374.    This is a personal view and does not necessarily represent that of my
  375.    employer.
  376.  
  377.    CERN has been through three network transitions in recent years (IPv4
  378.    renumbering managed by John Gamble, AppleTalk Phase I to Phase II
  379.    transition managed by Mike Gerard, and DECnet Phase IV to DECnet/OSI
  380.    routing transition managed by Denise Heagerty).  I could not have
  381.    written this document without having learnt from them. I have also
  382.    benefitted greatly from discussions with or the writings of many
  383.    people, especially various members of the IPng Directorate. Several
  384.    Directorate members gave comments that helped clarify this paper, as
  385.    did Bruce L Hutfless of Boeing.  However the opinions are mine and
  386.    are not shared by all Directorate members.
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Carpenter                                                       [Page 7]
  395.  
  396. RFC 1671          IPng White Paper on Transition, etc.       August 1994
  397.  
  398.  
  399. Author's Address
  400.  
  401.    Brian E. Carpenter
  402.    Group Leader, Communications Systems
  403.    Computing and Networks Division
  404.    CERN
  405.    European Laboratory for Particle Physics
  406.    1211 Geneva 23, Switzerland
  407.  
  408.    Phone:  +41 22 767-4967
  409.    Fax:    +41 22 767-7155
  410.    Telex:  419000 cer ch
  411.    EMail: brian@dxcoms.cern.ch
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450. Carpenter                                                       [Page 8]
  451.  
  452.